package com.jgzx.constant;

import cn.hutool.core.util.StrUtil;

/**
 * @Description 币种
 * @Author chenzy
 * @Date 2021/9/7 11:31
 **/
public enum CurrencyTypeEnum {

    /** 人民币【CNY】 */
    CHINESE_YUAN("CNY", "人民币"),
    /** 美元【USD】 */
    UNITED_STATES_DOLLAR("USD", "美元"),
    /** 英镑【GBP】 */
    GREAT_BRITAIN_STERLING_POUND("GBP", "英镑"),
    /** 港币【HKD】 */
    HONG_KONG_DOLLAR("HKD", "港币"),
    /** 日元【JPY】 */
    JAPANESE_YEN("JPY", "日元"),
    /** 欧元【EUR】 */
    EURO("EUR", "欧元"),
    /** 澳门币【MOP】 */
    MACAU_PATACA("MOP", "澳门币"),
    /** 新台币【TWD】 */
    TAIWAN_DOLLAR("TWD", "新台币"),
    ;

    private final String value;
    private final String showName;

    /**
     * @param value 值
     * @param showName 显示名称
     */
    CurrencyTypeEnum(String value, String showName){
        this.value = value;
        this.showName = showName;
    }

    /**
     * 通过单据类别值获取枚举对象
     * @param value 单据类别值
     * @return 单据类别枚举
     */
    public static CurrencyTypeEnum getCurrencyTypeByValue(String value){
        for(CurrencyTypeEnum currencyType : CurrencyTypeEnum.values()){
            if(StrUtil.equals(value, currencyType.value())){
                return currencyType;
            }
        }
        return null;
    }

    public String value() {
        return this.value;
    }

    public String showName() {
        return this.showName;
    }
}
